import axios from "axios";

// 实例化axios对象
var service = axios.create({
    baseURL:'/api',//请求的基准路径，公共前缀
    timeout:10000,  //请求超时时间
})

// 设置请求拦截器
service.interceptors.request.use((config)=>{
    // 统一设置请求头
    config.headers['Authorization'] = localStorage.getItem("token");
    // 还可以设置多个请求头
    // config.headers['Authorization'] = localStorage.getItem("token");
    return config;
},(error)=>{
    return Promise.reject(error);
})

// 设置响应拦截器
service.interceptors.response.use((res)=>{
    return res;
},(error)=>{//统一对错误状态码进行处理
    if(error.response.status == 401){
        alert("登录过期，请重新登录");
        // 并跳转到login页面
        // 删除过期的token
    }else if(error.response.status == 404){
        alert("请求资源有误");
    }else if(error.response.status == 500){
        alert("服务器内部出现错误");
    }
    return Promise.reject(error)
})

// 抛出
export default service;